"""
需求：
1. 设计一个 Game 类
2. 属性:
    • 定义一个 top_score 类属性 -> 记录游戏的历史最高分
    • 定义一个 player_name 实例属性 -> 记录当前游戏的玩家姓名
3. 方法:
    • 静态方法 show_help() -> 显示游戏帮助信息
    • 类方法 show_top_score() -> 显示历史最高分
    • 实例方法 start_game() -> 开始当前玩家的游戏
4. 主程序步骤:
    ① 查看帮助信息
    ② 查看历史最高分
    ③ 创建游戏对象， 开始游戏
"""


class Game(object):
    # 类属性，记录游戏的历史最高分
    top_score = 100

    def __init__(self, name):
        # self = xm, name = '小明'
        # 实例属性，玩家名字
        # 对象.变量 = 内容，  实例属性
        self.player_name = name

    @staticmethod
    def show_help():
        print('=' * 50)
        print('= 1. 开始游戏')
        print('= 2. 暂停游戏')
        print('= 3. 退出游戏')
        print('=' * 50)

    @classmethod
    def show_top_score(cls):
        print(f'历史最高分：{cls.top_score}')

    def start_game(self):
        # self = xm
        print(f'{self.player_name} 开始游戏')
        print('他玩的很嗨')
        # 修改类属性，只能通过 类名.类属性 操作
        Game.top_score = 99999


#     ① 查看帮助信息
Game.show_help()
#     ② 查看历史最高分
Game.show_top_score()
#     ③ 创建游戏对象， 开始游戏
# 实例方法，必须实例化对象后，才能调用实例方法
xm = Game('小明')
xm.start_game()
#     ② 查看历史最高分
Game.show_top_score()